
#include <chrono>
#include <glog/logging.h>
#include <string>

using namespace std::chrono_literals;

int main(int argc, char* argv[])
{
    google::SetStderrLogging(google::LogSeverity(FLAGS_minloglevel));
    google::InitGoogleLogging(argv[0]);

    LOG(INFO) << "std::chrono::system_clock::now(): " << std::chrono::system_clock::now();
    LOG(INFO) << "std::chrono::system_clock::now(): " << std::to_string(std::chrono::system_clock::now().time_since_epoch().count());
    LOG(INFO) << "std::chrono::high_resolution_clock::now(): " << std::chrono::high_resolution_clock::now();
    LOG(INFO) << "std::chrono::steady_clock::now(): " << std::to_string(std::chrono::steady_clock::now().time_since_epoch().count());
    auto one_daty = 24h;

    LOG(INFO) << "system_clock precision: "
              << (double)std::chrono::system_clock::period::num / std::chrono::system_clock::period::den
              << " seconds per tick" << std::endl;

    LOG(INFO) << "high_resolution_clock precision: "
              << (double)std::chrono::high_resolution_clock::period::num / std::chrono::high_resolution_clock::period::den
              << " seconds per tick" << std::endl;

    return 0;
}